package com.atues.thread.threadpool.capExp;

import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

public class ExecuteExample {
    public static void main(String[] args) {
        ExecutorService executor = Executors.newFixedThreadPool(1);
        
        System.out.println("=== execute() 示例 ===");
        
        // 第一个任务 - 正常执行
        executor.execute(() -> {
            System.out.println("任务1开始执行 - 线程: " + Thread.currentThread().getName());
        });
        
        // 第二个任务 - 抛出未捕获异常
        executor.execute(() -> {
            System.out.println("任务2开始执行 - 线程: " + Thread.currentThread().getName());
            throw new RuntimeException("任务2抛出的异常");
        });
        
        // 第三个任务 - 观察线程是否被替换
        executor.execute(() -> {
            System.out.println("任务3开始执行 - 线程: " + Thread.currentThread().getName());
        });
        
        executor.shutdown();
    }
}